Systems, methods, and apparatus for quality of service processing

ABSTRACT

A method of signal transmission according to one embodiment includes requesting a packet data serving node to filter a specified traffic flow from among a stream of packets. The method also includes requesting a radio access network to provide an indicated quality-of-service (QoS) treatment for the flow over a wireless air interface. The method further includes rescinding the request to filter or the request to provide a QoS treatment in response to a failure of the other request.

RELATED APPLICATIONS

This application claims benefit of U.S. Provisional Patent App. No.60/701,314, entitled “METHOD AND APPARATUS FOR SAVING AIR INTERFACERESOURCES,”, filed Jul. 19, 2005.

FIELD OF THE INVENTION

This invention relates to wireless communications.

BACKGROUND

Examples of applications of wireless communications include cordlesstelephones, paging, wireless local loops, personal digital assistants(PDAs), Internet telephony, and satellite communication systems. Aparticularly important application is cellular telephone systems formobile subscribers. As used herein, the term “cellular” systemencompasses both cellular and personal communications services (PCS)frequencies, or any other frequencies upon which networks for wirelessvoice and/or video telephony may operate. Various over-the-airinterfaces have been developed for cellular telephone systems including,e.g., frequency division multiple access (FDMA), time division multipleaccess (TDMA), and code division multiple access (CDMA). In connectiontherewith, various domestic and international standards have beenestablished including, e.g., Advanced Mobile Phone Service (AMPS),Global System for Mobile (GSM), and Interim Standard 95 (IS-95). IS-95and its derivatives, IS-95A, IS-95B, ANSI J-STD-008 (referred tocollectively below as IS-95), and proposed high-data-rate systems arepromulgated by the Telecommunications Industry Association (TIA,Arlington, Va.) and other well-known standards bodies.

Cellular telephone systems configured to comply with a version of anIS-95 standard employ CDMA signal processing techniques to providehighly efficient and robust cellular telephone service. Exemplarycellular telephone systems configured substantially in accordance withthe use of one or more of the IS-95 standards are described in U.S. Pat.Nos. 5,103,459 and 4,901,307.

The IS-95 standards subsequently evolved into third-generation or “3G”systems for wireless cellular telephony, such as cdma2000 and WCDMA,which provide more capacity as well as high-speed packet data services.Variations of cdma2000 include cdma2000 1xRTT (radio transmissiontechnology, also called “1x”), as described in the documents IS-2000(TIA) and C.S0001 to C.S0006 (Third Generation Partnership Project 2(3GPP2), Arlington, Va.), cdma2000 1xEV-DO (1x Evolution—Data Optimized,also called “DO” or High Rate Packet Data (“HRPD”)), as described in thedocument IS-856 (TIA), DO-Revision A as standardized in C.S20024-A (alsoknown as IS-856A), entitled “cdma2000 High Rate Packet Data AirInterface Specification,” v. 1.0, March 2004 or v. 2.0, July 2005(3GPP2), and cdma2000 1xEV-DV (1x Evolution, Data/Voice). A 1x systemoffers a peak data rate of 153 kbps, while an HRPD system offers a setof data rates ranging from 38.4 kbps to 2.4 Mbps, at which an accesspoint (AP) may send data to a subscriber station (also referred to as amobile station (MS) or access terminal (AT)). Because the AP isanalogous to a base station in a system for cellular telephony, theterminology with respect to cells and sectors in such a system forwireless packet data services is the same as with respect to voicesystems.

Given the growing demand for wireless data applications, the need forvery efficient wireless data communication systems has becomeincreasingly significant. One such wireless data application is thetransmission of data packets that originate or terminate atpacket-switching networks. Various standardized techniques exist fortransmitting packetized traffic over packet-switching networks so thatinformation arrives at its intended destination. One class of suchtechniques is described in the Wireless IP Network Standard IS-835(e.g., document IS-835D), which specifies operations of Packet DataServing Nodes (PDSN). A PDSN is responsible for establishing,maintaining, and terminating a packet data session with an accessterminal, such as a Point-to-Point Protocol (PPP) session over theInternet.

A subscriber station may be configured to execute various applicationsthat receive data from and/or transmit data to the network. Theseapplications may have very different tolerances and requirements interms of how this data is transported (also called “quality of service”or “QoS” requirements). Non-real-time applications such as e-mail andfile transfer (e.g., mp3 files) have variable bandwidth requirements butlax delay and loss requirements. Retransmission of missing or corruptedframes may be useful in non-real-time applications. Telephonyapplications may have low bandwidth requirements but have low tolerancefor frame delay and for variability in the delay (also called “jitter”).Typically the latency from one handset to the other should not exceed250 msec, and jitter should not exceed 20 msec. While the RLP (RadioLink Protocol) commonly used on a cdma2000 air interface allows forretransmission of frames, such retransmission is not useful forreal-time traffic.

A subscriber station may also be configured to execute one or moremultimedia applications having different QoS requirements. Streaming ofaudio and/or video content can tolerate some degree of startup delay andcan be buffered to increase tolerance to jitter, while bandwidth andloss tolerance characteristics may vary depending on the particularcodec. Interactive applications such as online gaming typically have lowbandwidth requirements but very strict delay requirements. Videoconferencing has high bandwidth requirements and also requires low delayand jitter.

It may be desirable to support QoS on a per-application-flow basis. Aparticular QoS treatment for a flow may be negotiated between two pointsof a packet data transmission (e.g., between a subscriber station and abase station, or between a subscriber station and a PDSN). A request fora particular QoS treatment may specify the bandwidth of the trafficchannel, the scheduling of packet data, the scheduling of transmissionpackets over-the-air, delay sensitivity of the contents, or otherfactors that may be deemed relevant by a network carrier or serviceprovider. Obtaining a desired level of service may involve requestingQoS processing operations from more than one network entity (e.g., froma base station and from a PDSN).

SUMMARY

A method of signal transmission according to an embodiment includestransmitting a request to separate, from among a stream of packets, aflow of packets that match at least one indicated criterion. The methodalso includes transmitting a request to map the flow of packets,according to an indicated quality-of-service (QoS) treatment, onto awireless air interface. The method further includes transmitting, inresponse to a failure of one among the request to separate and therequest to map, a rescission of the other among the request to separateand the request to map.

A method of signal transmission according to another embodiment includestransmitting, to a packet data serving node, a request to install apacket filter. The method also includes transmitting a request to map,onto a wireless air interface and according to an indicated QoStreatment, a flow of packets matching the packet filter. The methodfurther includes transmitting, in response to a failure of one among therequest to install and the request to map, a rescission of the otheramong the request to install and the request to map.

An apparatus for wireless communications according to an embodimentincludes means for generating a request to separate, from among a streamof packets, a flow of packets that match at least one indicatedcriterion. The apparatus also includes means for generating a request tomap the flow of packets onto a wireless air interface according to anindicated quality-of-service (QoS) treatment. The apparatus alsoincludes means for generating, in response to a failure of one among therequest to separate and the request to map, a rescission of the otheramong the request to separate and the request to map.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 shows one example of a wireless communication context including anetwork 100 for packet data service.

FIG. 2 shows one example of a portion of the protocol stacks of theentities illustrated in FIG. 1.

FIG. 3 shows one example of a transport path between an MS and a PDSNthat includes two different service connections.

FIG. 4 shows one example of a transport path between an MS and a PDSNthat includes multiple service instances and A10 connections.

FIG. 5 shows a block diagram of one example of a logical structure thatmay be used to implement a forward-link transport path (i.e., from theRAN to the MS) as shown in FIGS. 3 and/or 4.

FIG. 6 shows a flowchart of a method M100 according to an embodiment.

FIG. 7 shows a block diagram of an implementation 112 of MS 110.

FIG. 8 shows a flowchart of a sequence of operations according to methodM100.

FIG. 9 shows a flowchart of another sequence of operations according tomethod M100.

DETAILED DESCRIPTION

Although cdma2000 and 1x terminology is primarily used in thisdescription, it is expressly contemplated and hereby disclosed thatembodiments may be configured for use in other third-generation (3G)technologies, such as WCDMA (Wideband CDMA). A WCDMA standard is setforth in Documents Nos. 3G TS 25.211, 3G TS 25.212, 3G TS 25.213, and 3GTS 25.214 (Third Generation Partnership Project (3GPP), SophieAntipolis, FR). A WCDMA system is typically embodied as a UMTS(Universal Mobile Telecommunications System), which may include aUniversal Terrestrial Radio Access Network (UTRAN) in communication witha GPRS packet-switched core network. The WCDMA standard describes aradio interface for an IMT-2000 (International MobileTelecommunications) system, which may support High Speed Downlink PacketAccess (HSDPA).

Embodiments include methods of QoS processing and systems and apparatusconfigured to perform one or more such methods. FIG. 1 shows one exampleof a context in which such an embodiment may be applied. This exampleincludes one or more mobile stations (MSs) 110 and a network 100 forpacket data service, which may be configured to support communicationsaccording to one or more standards such as those listed herein.

On a physical level, an MS 110 includes radio-frequency circuitry, suchas a transceiver, for transmitting a signal to and receiving a signalfrom network 100. The MS may also include digital-to-analog andanalog-to-digital converters and other analog and/or digital signalprocessing circuitry. Depending on its implementation, the MS may alsoinclude user interface elements such as a keyboard, a display screen, amicrophone, and a speaker. An MS also typically includes one or moreembedded processors or IP cores configured to execute applicationsand/or control functions. Other common names for an MS include UserEquipment (UE) and Access Terminal (AT).

FIG. 1 shows examples of three different implementations 110 a,b,c ofMobile Station (MS) 110. The example MS 110 a is implemented as acellular telephone. An MS may also include a combination of more thanone apparatus, as shown in the examples MS 110 b and 110 c. Each ofthese examples includes a Terminal Equipment (TE), such as a laptopcomputer, and a Mobile Terminal (MT), such as a PCMCIA card including awireless modem or a cellular telephone, that provides wireless datacommunications capability to the TE, possibly through a Terminal Adapter(TA).

Network 100 includes a radio access network (RAN) 200 configured tocommunicate with one or more MSs over a wireless air interface. In thecontext of FIG. 1, a mobile station (MS) 110 is configured tocommunicate with RAN 200 for packet data service and possibly for otherservices such as circuit-switched telephony. In one example, thewireless air interface is a Um interface that complies with a version ofthe IS-2000 standard. A RAN commonly includes such elements as a basetransceiver system (BTS) or “base station” that interfaces with one ormore MSs, a base station controller (BSC) that controls one or moreBTSs, and a packet control function (PCF) that interfaces with a packetdata serving node (PDSN).

Network 100 also includes a PDSN 300 (also called a packet dataswitching node or a network access server) configured to communicatewith one or more RANs over a wired or optical link, such as an Ethernetlink, or over a wireless backhaul. Via the RAN, the PDSN communicateswith one or more MSs desiring or engaged in a packet data communication,acting as the first-hop router for IP traffic to and from the MS. Otherimplementations of network 100 include more than one PDSN (for example,a cluster of PDSNs).

As shown in FIG. 2, MS 110 is configured to execute one or moreapplications 120. These applications communicate across network 100 withcorresponding applications executing on servers (e.g., web servers)and/or on other terminals (e.g., other MSs). Examples of applications120 include e-mail, web browsing, file transfer protocol (FTP), Voiceover IP (VoIP), packet switched video telephony (PSVT), and televisionand other multimedia services. The MS may include video and/or audiocodecs that support multimedia applications via the user interface(e.g., a display screen and speaker). The MS may also include a SessionInitiation Protocol (SIP) user agent configured to communicate withanother MS, or with a general IP video or voice telephony device, via aSIP server on the other side of PDSN 300 for packet-switched telephonyservices (e.g., VoIP or video telephony).

Communications among the various network entities and terminals occurvia different layers of a stack of protocols. FIG. 2 shows one exampleof a portion of the protocol stacks of a MS, RAN, and PDSN as shown inFIG. 1. The protocol stack allows the MS to communicate with variouslogical entities in a communications network and/or with other terminalson the network. For example, an MS may be configured to communicate withthe RAN over the air interface by using a link layer protocol such asRLP (Radio Link Protocol, as defined in TIA IS-707.2). Other commonlyused protocols include transport layer protocols such as TCP(Transmission Control Protocol), UDP (User Datagram Protocol), and RTP(Real-time Transport Protocol, RFC 3550, July 2003, Internet EngineeringTask Force (IETF, ietf.org)); network layer protocols such as IP(Internet Protocol) and RRC (Radio Resource Control); and data linklayer protocols such as PPP (Point-to-Point Protocol).

As shown in FIG. 2, in some cases the MS and PDSN may communicate over adata link layer by establishing a PPP (Point-to-Point Protocol)connection. Alternatively, it may be desired to avoid one or moreshortcomings of PPP-based transmission, such as additional headeroverhead and invisibility of packet boundaries to the RAN. For example,a system that operates according to Revision A of 1xEV-DO may obtainPPP-free operation via an enhanced packet application standard as setforth in C.S0063-0 v.1.15, entitled “cdma2000 High Rate Packet DataSupplemental Services” (3GPP2, October 2005). Another PPP-free schemethat may be used is described in U.S. Publ. Pat. App. No. 2002/0097701(Lupien et al.), “METHOD AND SYSTEM FOR TRANSMISSION OF HEADERLESS DATAPACKETS OVER A WIRELESS LINK,” published Jul. 25, 2002.

A “flow” is defined as a series of packets that belong to the sameprotocol instantiation and share the same source and destination. An IPflow, for example, is a unidirectional flow of IP packets with the samesource IP address and port number, the same destination IP address andport number, and the same transport protocol. It may be desired tosupport the transmission of multiple traffic flows between the MS andPDSN for a single application and/or to support the transmission ofdifferent traffic flows between the MS and PDSN for differentapplications.

As discussed above, different applications may have differentrequirements in terms of quality of service parameters such as latency,bandwidth, and error tolerance. Compliance with such parameters mayrequire distinguishing multiple flows from one another for transmission.If the air interface is configured as a single queue of packets, forexample, latency-sensitive packets directed to a VoIP applicationexecuting on the MS may be delayed at the RAN, and thus become unusable,while an large ongoing transmission directed to another application(e.g., a one-megabyte web page directed to a web browser) occupies theair interface. Therefore, it is desirable to configure a packet dataservices network such as network 100 to support the transmission ofdifferent traffic flows according to different QoS assurances (alsoknown as “flow-based QoS”), based on factors such as the requirements ofthe corresponding applications.

A “service connection” is a logical connection between the MS and PDSNthat is used to transport user data to or from the MS. The transportpath between the MS and PDSN may include more than one serviceconnection configured to carry different traffic flows according todifferent QoS treatments. For example, the transport path may includeone service connection to carry a TCP/IP flow and another serviceconnection to carry an RTP video stream. FIG. 3 shows one example of atransport path between an MS and a PDSN that includes two differentservice connections, each configured to carry a corresponding trafficflow.

The portion of a service connection between the MS and RAN is called a“service instance” in 1x systems, while in HRPD systems a serviceinstance is called a “link flow” or “RLP instance.” The cdma2000specification describes a network that supports up to six serviceinstances per MS, each identified by a unique label called a ServiceReference Identifier (SR_ID). A service instance may have associated QoSsettings, and an MS may initiate multiple service instances during apacket call.

The air interface between the MS and the RAN may carry multiple serviceinstances, each having different bandwidth, delay, and errorcharacteristics. In 1X and HRPD systems, the air interface includes amain service instance and may include one or more auxiliary serviceinstances. Voice and data may be defined and specified independently asdifferent service options, and the air interface may support multipleservice instances for one or both of these service options. In oneexample, the MS has a main service instance to carry one or more TCP/IPflows and an auxiliary service instance to carry an RTP video stream.

The portion of a service connection between the RAN and the PDSN iscalled an “R-P connection” (for RAN-PDSN) and may be carried over anEthernet link as mentioned above. In 1X and HRPD systems, the R-Pinterface is defined as the combination of the A10 and A11 interfaces,where the A10 interface carrier user traffic between the RAN and PDSNand the A11 interface carries signaling information between the RAN andPDSN. As shown in the example of FIG. 4, service instances and A10connections may carry multiple flows, and separate instances of each(e.g., separate service connections) may be provided to supportdifferent QoS treatments. It may be desirable to assign flows havingsimilar QoS requirements to the same service instance.

In 1X and HRPD systems, each service instance is associated with one A10connection. On the forward link, the RAN maps an A10 connection to thecorresponding service instance, and on the reverse link (i.e., from theMS to the RAN), the RAN maps a service instance to a corresponding A10connection. It is possible that in other systems more than one serviceinstance is associated with one R-P connection. For example, it ispossible in such a system that an R-P connection may carry a flow thatexceeds the bandwidth limit for a single service instance and istherefore split over two service instances.

FIG. 5 shows a block diagram of one example of a logical structure thatmay be used to implement a forward-link transport path as shown in FIGS.3 and/or 4. This structure includes implementations 202 and 302,respectively, of RAN 200 and PDSN 300. PDSN 302 includes a filter 310configured to separate one or more traffic flows from among an incomingpacket stream, and RAN 202 includes a mapper 210 configured to map theseparate traffic flows to service instances based on a specified QoStreatment.

Mobile station 110 is configured to include a means for generating arequest to separate, from among a stream of packets, a flow of packetsthat match at least one indicated criterion (e.g., an air interfacecontrol module) and to transmit the request to the PDSN. Mobile state110 is also configured to include a means for generating a request tomap the flow of packets onto a wireless air interface according to anindicated quality-of-service (QoS) treatment (e.g., a packet datacontrol module) and to transmit the request to the RAN. Each such meansfor generating may be implemented in logic as, for example, one or morearrays of logic elements (such as gates or transistors) and/or one ormore sets of instructions executable by one or more arrays of logicelements. For example, one or both such means may be implemented as oneor more sets of instructions executable by one or more embeddedprocessors.

Mapper 210 may be configured to map traffic flows onto physical channelsof the wireless air interface. The physical channels may be multiplexedin time, frequency, and/or code space. In one example, a cdma2000 airinterface between an MS and a RAN includes a fundamental channel (FCH)for user traffic, a dedicated control channel (DCCH) that may carry usertraffic, and one or more supplemental channels (SCHs) for user traffic.

In some cases, a physical channel is used to carry more than one serviceinstance. It is possible that mapper 210 is configured to map all of theservice instances to one physical channel. In other cases, each physicalchannel is assigned to a different service instance type (e.g.,corresponding to a particular protocol or similar QoS treatments) andmay carry a multiplexed stream of flows of that type from differentservice instances. It is also possible for mapper 210 to map a serviceinstance to different physical channels at different times. Mapper 210may be implemented in logic as, for example, one or more arrays of logicelements (such as gates or transistors) and/or one or more sets ofinstructions executable by one or more arrays of logic elements.

Mapper 210 may include one or more schedulers that are each configuredto schedule packets for transmission over one or more physical channels.Such a scheduler may be implemented in logic as, for example, one ormore arrays of logic elements (such as gates or transistors) and/or oneor more sets of instructions executable by one or more arrays of logicelements. In one simple case, a scheduler is configured to selectpackets from each corresponding flow in a round-robin fashion, withpackets from different flows being scheduled in successive frames. Inother cases, a scheduler is configured to give priority to real-timeapplications. For example, a scheduler may be configured to recognizeflow profile IDs (as described below) that correspond to telephonyapplications, such as VoIP or PSVT.

At the PDSN, filter 310 distinguishes one or more incoming traffic flowsand sends them to the RAN over separate A10 connections. A PDSNtypically uses packet filtering to distinguish particular data flows andmap each one to an A10 connection associated with the correspondingservice instance. In this context, packet filtering includes comparinginformation from the header of each packet to one or more packetfilters, which are configured according to information provided by theMS. Filter 310 may be implemented in logic as, for example, one or morearrays of logic elements (such as gates or transistors) and/or one ormore sets of instructions executable by one or more arrays of logicelements.

In existing systems for packet data services, the MS typically requestsa specific QoS treatment for a given flow by negotiating separately withthe RAN and the PDSN. For example, an MS may operate according to aversion of the IS-856 standard (such as IS-856A) to negotiate a QoStreatment with the RAN for the air interface. Such negotiation mayinclude sending a request for the RAN to map the flow onto the airinterface according to a QoS treatment. The MS may also operateaccording to a version of the IS-835 standard (such as IS-835D) to senda request for the PDSN to install one or more packet filters that may beused to separate the flow from among a stream of packets.

In a typical cdma2000 system, an MS indicates a desired QoS treatment byrequesting a QoS block of bits (QOS_BLOB) in a signaling message to theRAN over the air interface. The entire QoS_BLOB applies to 1x, and itincludes a QoS_SUB_BLOB that also applies to HRPD. A QOS_SUB_BLOB mayinclude detailed QoS parameters indicating the desired QoS treatment fora corresponding flow, and a QOS_BLOB may contain QOS_SUB_BLOBs for morethan one flow. For example, a QOS_SUB_BLOB may specify requested and/oracceptable values for parameters such as data rate, frame error rate,delay, latency, jitter, data loss rate, and/or flow priority.

Alternatively, instead of sending QoS parameter values for a flow, theMS may send another indication of the desired QoS treatment. Forexample, WCDMA and cdma2000 specifications define four classes oftraffic for QoS purposes (conversational, streaming, interactive, andbackground), and the MS may indicate which of these classes is desiredfor the particular flow. In a further alternative, the MS indicates thedesired QoS treatment for a flow by sending an index into a table ofspecified QoS treatments. One example of such an index is a flow profileID (also called QoS Profile ID), which may be included in aQOS_SUB_BLOB. Table 13.1.1-1 of Document C.R1001-E (3GPP2) sets forth alist of 16-bit flow profile IDs, although flow profile IDs having otherlengths (e.g., 8 bits) may also be used.

The MS may be configured to send the QoS request to the RAN over anaccess channel of the air interface. In a cdma2000 1x system, the MS maybe configured to send the QoS request to the RAN in an OriginationMessage (OM) or Enhanced Origination Message (EOM). In a DO system, theMS may be configured to send the QoS request to the RAN in a GenericAttribute Update Protocol (GAUP) Message as described in the IS-856Astandard. In other cases, the MS may be configured to send the QoSrequest to the RAN in a Service Request Message.

In addition to the QoS requirements for the dataflow, the QoS requestfrom the MS to the RAN may indicate the direction of the requested dataflow (i.e., forward or reverse) and may also include an identifier ofthe requested flow. In some cases, the MS is configured to select anunused SR_ID for the flow identifier.

In response to the QoS request from the MS, the RAN returns anacknowledgement such as a granted QoS BLOB. In cdma2000 1x system, theRAN may be configured to send the QoS grant to the MS in a ServiceConnect Message. In other cases, the RAN may be configured to send theQoS grant to the MS in a Service Response Message.

The RAN decides whether an existing service instance can be used tosupport the requested data flow or a new service instance is needed. Ifa new service instance is needed, then the RAN and the MS negotiate theset-up of the new service instance. The RAN may be configured to use theflow identifier selected by the MS as the SR_ID for the new serviceinstance or, alternatively, to select another SR_ID for the new serviceinstance. If an existing service instance is used, the RAN typicallyuses the corresponding SR_ID in its response to the QoS request. The RANmay be configured to use the granted QoS treatment to control parameterssuch as channel rate, power control, number of RLP retransmissions, andMAC (Media Access Control) parameters. If a new service instance isestablished, the RAN may also communicate with the PDSN to setup a newA10 connection.

Between the RAN and PDSN, flow-based QoS treatment in a cdma2000 systemis supported by A10 connections. As the service instances areestablished between the MS and RAN, the RAN and PDSN establishcorresponding A10 connections between them. The PDSN uses traffic flowtemplates (TFTs) provided by the MS to map traffic flows to the A10connections.

To request QoS processing from the PDSN, the MS sends a Traffic FlowTemplate (TFT) to the PDSN. Such a request may be carried in an RSVPResv message, where RSVP is an abbreviation for the Resource ReservationProtocol (RFC 2205, IETF, September 1997), which provides a mechanismfor reserving transport resources over a signaling plane (e.g., asdescribed in TIA document IS-835C). The TFT includes the IP address ofthe MS, a service reference identifier (SR_ID) that identifies the A10connection to which the TFT corresponds, and a list of one or morepacket filters.

Each packet filter includes a flow identifier (e.g., an 8-bit field) asassigned by the MS or RAN, a destination IP address, a destination portnumber, and a protocol type identifier. For example, a packet filter mayinclude a five-tuple that indicates the top-layer protocol of the flow,the IP address and port number of the flow source, and the IP addressand port number of the flow destination. A packet filter may also have aprecedence value that indicates a priority among the packet filters.Formats for TFTs, packet filters, and Resv messages carrying them aredescribed in detail in, for example, Annex B of the 3GPP2 documentX.S0011-004-D v1.0, entitled “cdma2000 Wireless IP Network Standard:Quality of Service and Header Reduction,” February 2006.

The RSVP Resv message may also indicate the direction of the new dataflow (forward or reverse) and/or the end-to-end QoS parameters for thenew data flow. The PDSN returns an RSVP ResvConf message when the QoSoperation requested in the Resv message is granted, and a ResvErrmessage otherwise. The MS may also be configured to update the TFT whenany of the TFT components change.

When an incoming packet arrives at the PDSN in the forward direction,the destination IP address is checked to determine which set of TFTs touse. Then the PDSN searches for a match among all packet filters in theTFTs belonging to that destination IP address. If an incoming forwardpacket matches a packet filter within a corresponding TFT, then the PDSNsends the packet to the RAN over the corresponding A10 connection. If anincoming forward packet does not match any packet filter within acorresponding TFT, then the PDSN sends the packet to the RAN over a main(or default) A10 connection. The same procedure is executed forreverse-link QoS processing, with the packet's source IP address beingused instead.

The QoS treatments that are available to an MS may be limited in somemanner. For example, an MS is typically limited to a maximum aggregatebandwidth for all application flows. The MS may also be authorized forcertain QoS profile IDs, for a maximum per-flow priority, and/or for amaximum number of service instances.

The PDSN typically supports authorization of QoS options for the MS byobtaining a user QoS profile (also called “subscriber QoS profile”) thatcorresponds to the MS. The user QoS profile typically includes a list ofthe user's authorized flow profile IDs, which may include flow profileIDs for PSVT and/or VoIP. In one example, the PDSN obtains the user QoSprofile from an AAA (authentication, authorization, and accounting)entity during setup of the main service connection and forwards thisprofile to the RAN. The RAN may then be configured to reject requestsfor flow profile IDs that are not in the Authorized QoS Profile ID listfor that subscriber.

The IS-835D and IS-856 standards were formulated to be interoperable. Asthese two standards are separate, however, unexpected operational issuesmay arise between them in practice. Since the MS must negotiateseparately with each entity, for example, it may happen that negotiationof the MS with the RAN or with the PDSN does not occur or otherwisefails. The resulting condition may be sub-optimal in terms of leveragingnetwork resources.

It is possible that the MS will make a QoS request to the RAN that isaccepted and a corresponding QoS request to the PDSN which is refused(e.g., via a ResvErr message) or not acknowledged. A PDSN typicallyserves more than one RAN, for example, and its capacity for new A10connections, TFTs, and/or packet filters may be currently exhausted.Alternatively, the PDSN may be down or otherwise unavailable. When sucha QoS processing failure occurs, a service instance between the MS andRAN may nevertheless remain reserved for the flow according to thesuccessful QoS request, which reservation reduces the amount ofresources available to other subscriber stations.

Even if the RAN eventually determines that the service instance is notbeing used, the RAN may continue to reserve that resource for futureuse, as the IS-856 standard allows for an MS to operate in a dormantstate. Such a condition is sub-optimal in that other subscriber stationsmay be denied access to the reserved but unused resources. Releasingunused air bandwidth for use by other services is important formaximizing service provider revenue. Thus it is desirable to conserveair interface resources that comply with a version of the IS-856standard while satisfying the demands of packet data operationsaccording to a version of the IS-835 standard.

FIG. 6 shows a flowchart of a method M100 according to an embodiment.Task T110 transmits a request to separate a specified traffic flow fromamong a stream of packets. Task T120 transmits a request to map thespecified traffic flow over a wireless air interface according to anindicated quality of service. In response to a failure of one among therequest to separate and the request to map, task T130 transmits arescission of the other among the request to separate and the request tomap.

The request to separate may include one or more packet filters, eachspecifying a different traffic flow. A packet filter indicates thedestination of the traffic flow to be filtered from the stream ofpackets. As described above, a packet filter may include a five-tupleindicating the IP address and port number of the source of the trafficflow, the IP address and port number of the destination of the trafficflow, and the protocol of the traffic flow.

The request to map may include a flow identifier and an indication of adesired QoS treatment. The flow identifier may include the source anddestination of the traffic flow. Alternatively, the flow identifier maybe an index assigned by the MS or by the RAN. The request to separatemay also include the flow identifier.

An MS 110 may be configured to perform an implementation of method M100.In such case, the MS may include a means for generating, in response toa failure of one among the request to separate and the request to map, arescission of the other among the request to separate and the request tomap. Such means may be configured to determine the failure of one amongthe request to separate and the request to map based on a failure todetect an acknowledgement of the request within a predetermined timeinterval (e.g. according to the expiration of a timer). Such means maybe implemented in logic as, for example, one or more arrays of logicelements (such as gates or transistors) and/or one or more sets ofinstructions executable by one or more arrays of logic elements. FIG. 7shows a block diagram of such an implementation 112 of MS 110.

FIG. 8 shows a sequence of operations according to method M100 asdescribed above. In operation O110, an application executing on the MScauses the MS to request QoS processing from the RAN. For example, theMS may issue a request to map according to task T120. If the RAN doesnot grant the QoS request, then in operation O120 the MS informs theapplication that the QoS treatment is not granted, and the MS waits forthe application to initiate new commands.

If the RAN grants the QoS request, then in operation O130 the MSrequests QoS processing from the PDSN (or another network entity). Forexample, the MS may issue a request to separate according to task T110.If the PDSN does not grant the QoS request (e.g., the request isrefused, or no acknowledgment is received within some time intervalafter transmission of the request), then in operation O140 the MSrequests the RAN to release the QoS resources. Such an operation may beimplemented, for example, by sending a QoS request having a flow profileID equal to NULL. This NULL request indicates to the RAN that QoSresources reserved for the corresponding flow may be released. If thePDSN grants the QoS request, then in operation O150 the MS informs theapplication that the requested QoS treatment is granted, and the MSwaits for the application to initiate new commands.

In another sequence of operations according to method M100, the MS sendsthe QoS request for a flow to the PDSN before receiving a response froma QoS request for the flow from the RAN (and possibly before sending theQoS request to the RAN). The QoS request to the RAN may be shorter (andthus more quickly transmitted) than the QoS request to the PDSN. Forexample, in some cases the QoS request to the RAN may be transmitted inone frame of 20 or 26 milliseconds, while transmission of the QoSrequest to the PDSN (such as an RSVP message containing a TFT) may takeseveral frames to complete. The path between the MS and the RAN is alsomore direct than the path between the MS and the PDSN, such that aresponse to the QoS request to the RAN is typically received earlierthan a response to the QoS request to the PDSN.

Alternatively, it may be desired to conserve PDSN resources when QoSnegotiation between the MS and RAN for air interface resources fails.The MS may initiate over-the-air (OTA) QoS negotiation with the RAN andRSVP signaling with the PDSN simultaneously. If the OTA QoS negotiationwith the RAN fails (e.g., a granted QoS BLOB is not received) but theRSVP signaling with the PDSN to create a TFT succeeds, resources on thePDSN may be unnecessarily occupied in filtering packets directed to theMS (e.g., unnecessarily installed TFTs and packet filters, andprocessing cycles wasted in filtering packets according to thesefilters). Due to the OTA QoS negotiation failure, any packets separatedby the filters will be sent on the default A10 connection anyway.

In such case, the MS is configured to re-signal the PDSN, upon detectingfailure of the OTA QoS negotiation and success of the RSVP QoSsignaling, to delete the TFT and the packet filters associated with theTFT. The PDSN deletes the TFT and un-installs the packet filtersassociated with the TFT, thereafter delivering the packets directly tothe primary A10 connection.

FIG. 9 shows another sequence of operations according to method M100 asdescribed above. In operation O210, an application executing on the MScauses the MS to request QoS processing from the PDSN (or anothernetwork entity). For example, the MS may issue a request to separateaccording to task T110. If the PDSN does not grant the QoS request, thenin operation O220 the MS informs the application that the QoS treatmentis not granted, and the MS waits for the application to initiate newcommands.

If the PDSN grants the QoS request, then in operation O230 the MSrequests QoS processing from the RAN. For example, the MS may issue arequest to map according to task T120. If the RAN does not grant the QoSrequest (e.g., the request is refused, or no acknowledgment is receivedwithin some time interval after transmission of the request), then inoperation O240 the MS requests the PDSN to release the QoS resources.Such an operation may be implemented, for example, by sending a TFT thatincludes the flow identifier and an opcode (operation code) thatinstructs the PDSN to delete the packet filters corresponding to thatflow. If the RAN grants the QoS request, then in operation O250 the MSinforms the application that the requested QoS treatment is granted, andthe MS waits for the application to initiate new commands.

The application requesting QoS treatment may be any software module thatrequests access to the Internet or other packet-switched network.Processing elements and memory elements may be configured and arrangedto carry out one or more sets of instructions to implement a method asdescribed herein. For illustrative ease, embodiments have been describedin the context of entities operating in accordance with IS-856 (e.g.,IS-856A) and IS-835 (e.g., IS-835D) standards. However, embodiments mayalso be implemented and applied to any wireless technology in which asubscriber station is configured to request a QoS treatment for aparticular traffic flow from a first entity configured to distinguishone or more specified traffic flows from among a stream of packets andfrom a second entity configured to map traffic flows separately onto anair interface.

The foregoing presentation of the described embodiments is provided toenable any person skilled in the art to make or use the presentinvention. Various modifications to these embodiments are possible, andthe generic principles presented herein may be applied to otherembodiments as well. For example, an embodiment may be implemented inpart or in whole as a hard-wired circuit, as a circuit configurationfabricated into an application-specific integrated circuit, or as afirmware program loaded into non-volatile storage or a software programloaded from or into a data storage medium (such as removable orintegrated semiconductor or other volatile or nonvolatile memory, or amagnetic and/or optical medium such as a disk) as machine-readable code,such code being instructions executable by one or more arrays of logicelements such as processors, microprocessors or other digital signalprocessing units, microcontrollers, or other finite state machines(whether such arrays or arrays are separate, integrated, and/orembedded).

Methods described herein may be tangibly embodied (for example, in oneor more data storage media) as one or more sets of instructions readableand/or executable by a machine including an array of logic elements.Thus, the present invention is not intended to be limited to theembodiments shown above but rather is to be accorded the widest scopeconsistent with the principles and novel features disclosed in anyfashion herein.

1. A method of signal transmission within a network, said methodcomprising: transmitting a first request from a mobile device to a firstnode to separate, from among a stream of a plurality of packet flowsbetween the mobile device and the first node, a first flow of packetsthat match at least one indicated criterion; transmitting a secondrequest from the mobile device to a second node to map the first flow ofpackets onto a wireless air interface according to an indicatedquality-of-service (QoS) treatment, wherein the mobile device is adaptedto separately and directly negotiate with the first node and the secondnode to request a particular QoS treatment for the first flow ofpackets; and in response to a failure of either the first request toseparate or the second request to map, transmitting a rescission requestfrom the mobile device to rescind the other request that did not fail.2. The method of signal transmission according to claim 1, wherein theindicated QoS treatment includes a requested data rate for the specifiedfirst flow.
 3. The method of signal transmission according to claim 1,wherein the indicated QoS treatment includes an index into a table ofQoS profiles.
 4. The method of signal transmission according to claim 1,wherein the at least one criterion includes a specified destinationaddress of the packets of the first packet flow.
 5. The method of signaltransmission according to claim 1, wherein the first request to separateincludes a request to filter the stream of the plurality of packet flowsaccording to a traffic flow template.
 6. The method of signaltransmission according to claim 1, wherein the first request to separateindicates at least one among a source address or a destination addresscommon to each among the flow of packets.
 7. The method of signaltransmission according to claim 1, wherein at least one of the failureof the first request or the failure of the second request is indicatedby a failure to detect an acknowledgement of either the first request orthe second request within a predetermined time interval.
 8. The methodof signal transmission according to claim 1, wherein said transmittingthe first request to separate comprises transmitting, to a packet dataserving node, a request to filter the stream of packets according to atraffic flow template.
 9. The method of signal transmission according toclaim 1, wherein said transmitting a the second request to map comprisestransmitting, to a radio access network, a request to transport the flowof packets over the wireless air interface according to the indicatedQoS treatment.
 10. A data storage medium having a set ofmachine-executable instructions that describes the method of signaltransmission according to claim
 1. 11. A method, operational on a mobiledevice, of signal transmission, said method comprising: transmitting,from a mobile device to a packet data serving node, a first request toinstall a packet filter at the data serving node; transmitting, from themobile device to a network access node, a second request to map, onto awireless air interface at the access node and according to an indicatedquality-of-service (QoS) treatment, a flow of packets matching thepacket filter, wherein the mobile device is adapted to separately anddirectly negotiate with the packet data serving node and the networkaccess node to request a particular QoS treatment for the flow ofpackets; and in response to a failure of either the first request toinstall a packet filter at the data serving node or the second requestto map, transmitting a rescission request from the mobile device torescind the other request that did not fail.
 12. A data storage mediumhaving a set of machine-executable instructions that describes themethod of signal transmission according to claim
 11. 13. An apparatusfor wireless communications, said apparatus comprising: means forgenerating a first request for a data serving node to separate, fromamong a stream of a plurality of packet flows between the apparatus andthe data serving node, a first flow of packets that match at least oneindicated criterion; means for generating a second request for a networkaccess node to map the first flow of packets onto a wireless airinterface according to an indicated quality-of-service (QoS) treatment,wherein the apparatus is adapted to separately and directly negotiatewith the data serving node and the network access node to request aparticular QoS treatment for the first flow of packets; means forgenerating a rescission request to rescind one among the first requestto separate or the second request to map in response to a failure of theother request that did not fail among the first request to separate orthe second request to map.
 14. The apparatus for wireless communicationsaccording to claim 13, wherein the indicated QoS treatment includes arequested data rate for the specified first flow.
 15. The apparatus forwireless communications according to claim 13, wherein the indicated QoStreatment includes an index into a table of QoS profiles.
 16. Theapparatus for wireless communications according to claim 13, wherein theat least one criterion includes a specified destination address of thepacket packets of the first packet flow.
 17. The apparatus for wirelesscommunications according to claim 13, wherein said means for generatinga the first request to separate is configured to generate the firstrequest to separate to include a request to filter the stream of packetsaccording to a traffic flow template.
 18. The apparatus for wirelesscommunications according to claim 17, wherein said apparatus isconfigured to transmit the first request to separate to a packet dataserving node.
 19. The apparatus for wireless communications according toclaim 13, wherein said means for generating a the first request toseparate is configured to generate the first request to separate toindicate at least one among a source address or a destination addresscommon to each among the flow of packets.
 20. The apparatus for wirelesscommunications according to claim 13, wherein said means for generatinga rescission request is configured to determine the failure of the firstrequest to separate or the second request to map based on a failure todetect an acknowledgement of either the first request or second requestwithin a predetermined time interval.
 21. The apparatus for wirelesscommunications according to claim 13, wherein said means for generatinga the second request to map is configured to generate the second requestto map as a request to transport the flow of packets over the wirelessair interface according to the indicated QoS treatment, and wherein saidapparatus is configured to transmit the second request to map to a radioaccess network.
 22. The apparatus for wireless communications accordingto claim 13, wherein said apparatus is an integrated circuit.
 23. Theapparatus for wireless communications according to claim 13, whereinsaid apparatus is a cellular telephone.